<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.14"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>physx::PxTask Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
  $(document).ready(initResizable);
/* @license-end */</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectlogo"><img alt="Logo" src="PhysXLogoBlack.png"/></td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.14 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('classphysx_1_1PxTask.html','');});
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pro-attribs">Protected Attributes</a> &#124;
<a href="#friends">Friends</a> &#124;
<a href="classphysx_1_1PxTask-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">physx::PxTask Class Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p>A <a class="el" href="classphysx_1_1PxBaseTask.html" title="Base class of all task types. ">PxBaseTask</a> implementation with deferred execution and full dependencies.  
 <a href="classphysx_1_1PxTask.html#details">More...</a></p>

<p><code>#include &lt;<a class="el" href="PxTask_8h_source.html">PxTask.h</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for physx::PxTask:</div>
<div class="dyncontent">
<div class="center"><img src="classphysx_1_1PxTask__inherit__graph.png" border="0" usemap="#physx_1_1PxTask_inherit__map" alt="Inheritance graph"/></div>
<map name="physx_1_1PxTask_inherit__map" id="physx_1_1PxTask_inherit__map">
<area shape="rect" id="node2" href="classphysx_1_1PxBaseTask.html" title="Base class of all task types. " alt="" coords="5,5,144,32"/>
</map>
<center><span class="legend">[<a target="top" href="graph_legend.html">legend</a>]</span></center></div>
<div class="dynheader">
Collaboration diagram for physx::PxTask:</div>
<div class="dyncontent">
<div class="center"><img src="classphysx_1_1PxTask__coll__graph.png" border="0" usemap="#physx_1_1PxTask_coll__map" alt="Collaboration graph"/></div>
<map name="physx_1_1PxTask_coll__map" id="physx_1_1PxTask_coll__map">
<area shape="rect" id="node2" href="classphysx_1_1PxBaseTask.html" title="Base class of all task types. " alt="" coords="15,95,154,121"/>
<area shape="rect" id="node3" href="classphysx_1_1PxTaskManager.html" title="The PxTaskManager interface. " alt="" coords="5,5,164,32"/>
</map>
<center><span class="legend">[<a target="top" href="graph_legend.html">legend</a>]</span></center></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a01ed1f8968b3e631509c42994b10b5cd"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classphysx_1_1PxTask.html#a01ed1f8968b3e631509c42994b10b5cd">PxTask</a> ()</td></tr>
<tr class="separator:a01ed1f8968b3e631509c42994b10b5cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acde4da75284803e84d6cb20cda890223"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classphysx_1_1PxTask.html#acde4da75284803e84d6cb20cda890223">~PxTask</a> ()</td></tr>
<tr class="separator:acde4da75284803e84d6cb20cda890223"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acedcca7b8305c3ad519e537ab307c39a"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classphysx_1_1PxTask.html#acedcca7b8305c3ad519e537ab307c39a">release</a> ()</td></tr>
<tr class="memdesc:acedcca7b8305c3ad519e537ab307c39a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Release method implementation.  <a href="#acedcca7b8305c3ad519e537ab307c39a">More...</a><br /></td></tr>
<tr class="separator:acedcca7b8305c3ad519e537ab307c39a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa417f4d080c31178ff6ded2c92b8bb05"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#gacb03347b642a2a5bdea1f9b305a6fbec">PX_INLINE</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classphysx_1_1PxTask.html#aa417f4d080c31178ff6ded2c92b8bb05">finishBefore</a> (<a class="el" href="namespacephysx.html#a7a08e207472f32da1e024056f32d64a2">PxTaskID</a> taskID)</td></tr>
<tr class="memdesc:aa417f4d080c31178ff6ded2c92b8bb05"><td class="mdescLeft">&#160;</td><td class="mdescRight">Inform the <a class="el" href="classphysx_1_1PxTaskManager.html" title="The PxTaskManager interface. ">PxTaskManager</a> this task must finish before the given.  <a href="#aa417f4d080c31178ff6ded2c92b8bb05">More...</a><br /></td></tr>
<tr class="separator:aa417f4d080c31178ff6ded2c92b8bb05"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5ea294d819b903a507efe1358f86b8cd"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#gacb03347b642a2a5bdea1f9b305a6fbec">PX_INLINE</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classphysx_1_1PxTask.html#a5ea294d819b903a507efe1358f86b8cd">startAfter</a> (<a class="el" href="namespacephysx.html#a7a08e207472f32da1e024056f32d64a2">PxTaskID</a> taskID)</td></tr>
<tr class="memdesc:a5ea294d819b903a507efe1358f86b8cd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Inform the <a class="el" href="classphysx_1_1PxTaskManager.html" title="The PxTaskManager interface. ">PxTaskManager</a> this task cannot start until the given.  <a href="#a5ea294d819b903a507efe1358f86b8cd">More...</a><br /></td></tr>
<tr class="separator:a5ea294d819b903a507efe1358f86b8cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad3828abb4bd2237af28ecd08b972b1af"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#gacb03347b642a2a5bdea1f9b305a6fbec">PX_INLINE</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classphysx_1_1PxTask.html#ad3828abb4bd2237af28ecd08b972b1af">addReference</a> ()</td></tr>
<tr class="memdesc:ad3828abb4bd2237af28ecd08b972b1af"><td class="mdescLeft">&#160;</td><td class="mdescRight">Manually increment this task's reference count. The task will not be allowed to run until <a class="el" href="classphysx_1_1PxTask.html#a097c70f1419ad4991ef876ddd9a74d48" title="Manually decrement this task&#39;s reference count. If the reference count reaches zero, the task will be dispatched. ">removeReference()</a> is called.  <a href="#ad3828abb4bd2237af28ecd08b972b1af">More...</a><br /></td></tr>
<tr class="separator:ad3828abb4bd2237af28ecd08b972b1af"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a097c70f1419ad4991ef876ddd9a74d48"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#gacb03347b642a2a5bdea1f9b305a6fbec">PX_INLINE</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classphysx_1_1PxTask.html#a097c70f1419ad4991ef876ddd9a74d48">removeReference</a> ()</td></tr>
<tr class="memdesc:a097c70f1419ad4991ef876ddd9a74d48"><td class="mdescLeft">&#160;</td><td class="mdescRight">Manually decrement this task's reference count. If the reference count reaches zero, the task will be dispatched.  <a href="#a097c70f1419ad4991ef876ddd9a74d48">More...</a><br /></td></tr>
<tr class="separator:a097c70f1419ad4991ef876ddd9a74d48"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aae6b544fb79856864edbfaf83cce023a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#gacb03347b642a2a5bdea1f9b305a6fbec">PX_INLINE</a> int32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classphysx_1_1PxTask.html#aae6b544fb79856864edbfaf83cce023a">getReference</a> () const</td></tr>
<tr class="memdesc:aae6b544fb79856864edbfaf83cce023a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the ref-count for this task.  <a href="#aae6b544fb79856864edbfaf83cce023a">More...</a><br /></td></tr>
<tr class="separator:aae6b544fb79856864edbfaf83cce023a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af4d14c61a128bf98957331c04472a4df"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#gacb03347b642a2a5bdea1f9b305a6fbec">PX_INLINE</a> <a class="el" href="namespacephysx.html#a7a08e207472f32da1e024056f32d64a2">PxTaskID</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classphysx_1_1PxTask.html#af4d14c61a128bf98957331c04472a4df">getTaskID</a> () const</td></tr>
<tr class="memdesc:af4d14c61a128bf98957331c04472a4df"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the unique ID for this task.  <a href="#af4d14c61a128bf98957331c04472a4df">More...</a><br /></td></tr>
<tr class="separator:af4d14c61a128bf98957331c04472a4df"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2a0a6f83fcd05069f594631272faa8ae"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classphysx_1_1PxTask.html#a2a0a6f83fcd05069f594631272faa8ae">submitted</a> ()</td></tr>
<tr class="memdesc:a2a0a6f83fcd05069f594631272faa8ae"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called by <a class="el" href="classphysx_1_1PxTaskManager.html" title="The PxTaskManager interface. ">PxTaskManager</a> at submission time for initialization.  <a href="#a2a0a6f83fcd05069f594631272faa8ae">More...</a><br /></td></tr>
<tr class="separator:a2a0a6f83fcd05069f594631272faa8ae"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classphysx_1_1PxBaseTask"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classphysx_1_1PxBaseTask')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classphysx_1_1PxBaseTask.html">physx::PxBaseTask</a></td></tr>
<tr class="memitem:a387b986ef3916322502452724d9ba582 inherit pub_methods_classphysx_1_1PxBaseTask"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classphysx_1_1PxBaseTask.html#a387b986ef3916322502452724d9ba582">PxBaseTask</a> ()</td></tr>
<tr class="separator:a387b986ef3916322502452724d9ba582 inherit pub_methods_classphysx_1_1PxBaseTask"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac3100494c97a23a88fcad8e28e222822 inherit pub_methods_classphysx_1_1PxBaseTask"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classphysx_1_1PxBaseTask.html#ac3100494c97a23a88fcad8e28e222822">~PxBaseTask</a> ()</td></tr>
<tr class="separator:ac3100494c97a23a88fcad8e28e222822 inherit pub_methods_classphysx_1_1PxBaseTask"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a517a16d9dc630c9274a7564deb3a7e4a inherit pub_methods_classphysx_1_1PxBaseTask"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classphysx_1_1PxBaseTask.html#a517a16d9dc630c9274a7564deb3a7e4a">run</a> ()=0</td></tr>
<tr class="memdesc:a517a16d9dc630c9274a7564deb3a7e4a inherit pub_methods_classphysx_1_1PxBaseTask"><td class="mdescLeft">&#160;</td><td class="mdescRight">The user-implemented run method where the task's work should be performed.  <a href="classphysx_1_1PxBaseTask.html#a517a16d9dc630c9274a7564deb3a7e4a">More...</a><br /></td></tr>
<tr class="separator:a517a16d9dc630c9274a7564deb3a7e4a inherit pub_methods_classphysx_1_1PxBaseTask"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa54eb4a1b50979436a797a62e383efee inherit pub_methods_classphysx_1_1PxBaseTask"><td class="memItemLeft" align="right" valign="top">virtual const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classphysx_1_1PxBaseTask.html#aa54eb4a1b50979436a797a62e383efee">getName</a> () const =0</td></tr>
<tr class="memdesc:aa54eb4a1b50979436a797a62e383efee inherit pub_methods_classphysx_1_1PxBaseTask"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return a user-provided task name for profiling purposes.  <a href="classphysx_1_1PxBaseTask.html#aa54eb4a1b50979436a797a62e383efee">More...</a><br /></td></tr>
<tr class="separator:aa54eb4a1b50979436a797a62e383efee inherit pub_methods_classphysx_1_1PxBaseTask"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4fdd1448dcd86af96c5f1b79eb470e44 inherit pub_methods_classphysx_1_1PxBaseTask"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#ga6a774eed3cad34b0f636332a3d28c6bb">PX_FORCE_INLINE</a> <a class="el" href="classphysx_1_1PxTaskManager.html">PxTaskManager</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classphysx_1_1PxBaseTask.html#a4fdd1448dcd86af96c5f1b79eb470e44">getTaskManager</a> () const</td></tr>
<tr class="memdesc:a4fdd1448dcd86af96c5f1b79eb470e44 inherit pub_methods_classphysx_1_1PxBaseTask"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return <a class="el" href="classphysx_1_1PxTaskManager.html" title="The PxTaskManager interface. ">PxTaskManager</a> to which this task was submitted.  <a href="classphysx_1_1PxBaseTask.html#a4fdd1448dcd86af96c5f1b79eb470e44">More...</a><br /></td></tr>
<tr class="separator:a4fdd1448dcd86af96c5f1b79eb470e44 inherit pub_methods_classphysx_1_1PxBaseTask"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0fa6ca56b758ea6b8be5c3acc8e89364 inherit pub_methods_classphysx_1_1PxBaseTask"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#ga6a774eed3cad34b0f636332a3d28c6bb">PX_FORCE_INLINE</a> void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classphysx_1_1PxBaseTask.html#a0fa6ca56b758ea6b8be5c3acc8e89364">setContextId</a> (<a class="el" href="namespacephysx.html#a8ee037dcecf7198800e1f302795c10ee">PxU64</a> id)</td></tr>
<tr class="separator:a0fa6ca56b758ea6b8be5c3acc8e89364 inherit pub_methods_classphysx_1_1PxBaseTask"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abbc9d0b8d2a3c95f6c4579920f92d337 inherit pub_methods_classphysx_1_1PxBaseTask"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#ga6a774eed3cad34b0f636332a3d28c6bb">PX_FORCE_INLINE</a> <a class="el" href="namespacephysx.html#a8ee037dcecf7198800e1f302795c10ee">PxU64</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classphysx_1_1PxBaseTask.html#abbc9d0b8d2a3c95f6c4579920f92d337">getContextId</a> () const</td></tr>
<tr class="separator:abbc9d0b8d2a3c95f6c4579920f92d337 inherit pub_methods_classphysx_1_1PxBaseTask"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-attribs"></a>
Protected Attributes</h2></td></tr>
<tr class="memitem:aa67264a3a16ca138fd854539bf52ac06"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacephysx.html#a7a08e207472f32da1e024056f32d64a2">PxTaskID</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classphysx_1_1PxTask.html#aa67264a3a16ca138fd854539bf52ac06">mTaskID</a></td></tr>
<tr class="memdesc:aa67264a3a16ca138fd854539bf52ac06"><td class="mdescLeft">&#160;</td><td class="mdescRight">ID assigned at submission.  <a href="#aa67264a3a16ca138fd854539bf52ac06">More...</a><br /></td></tr>
<tr class="separator:aa67264a3a16ca138fd854539bf52ac06"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_attribs_classphysx_1_1PxBaseTask"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classphysx_1_1PxBaseTask')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="classphysx_1_1PxBaseTask.html">physx::PxBaseTask</a></td></tr>
<tr class="memitem:a67864643cd2dfaf8483f8b7a75376bc7 inherit pro_attribs_classphysx_1_1PxBaseTask"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacephysx.html#a8ee037dcecf7198800e1f302795c10ee">PxU64</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classphysx_1_1PxBaseTask.html#a67864643cd2dfaf8483f8b7a75376bc7">mContextID</a></td></tr>
<tr class="memdesc:a67864643cd2dfaf8483f8b7a75376bc7 inherit pro_attribs_classphysx_1_1PxBaseTask"><td class="mdescLeft">&#160;</td><td class="mdescRight">Context ID for profiler interface.  <a href="classphysx_1_1PxBaseTask.html#a67864643cd2dfaf8483f8b7a75376bc7">More...</a><br /></td></tr>
<tr class="separator:a67864643cd2dfaf8483f8b7a75376bc7 inherit pro_attribs_classphysx_1_1PxBaseTask"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af23fffec1e92c794d3ad73e9fc4fa974 inherit pro_attribs_classphysx_1_1PxBaseTask"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classphysx_1_1PxTaskManager.html">PxTaskManager</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classphysx_1_1PxBaseTask.html#af23fffec1e92c794d3ad73e9fc4fa974">mTm</a></td></tr>
<tr class="memdesc:af23fffec1e92c794d3ad73e9fc4fa974 inherit pro_attribs_classphysx_1_1PxBaseTask"><td class="mdescLeft">&#160;</td><td class="mdescRight">Owning <a class="el" href="classphysx_1_1PxTaskManager.html" title="The PxTaskManager interface. ">PxTaskManager</a> instance.  <a href="classphysx_1_1PxBaseTask.html#af23fffec1e92c794d3ad73e9fc4fa974">More...</a><br /></td></tr>
<tr class="separator:af23fffec1e92c794d3ad73e9fc4fa974 inherit pro_attribs_classphysx_1_1PxBaseTask"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
Friends</h2></td></tr>
<tr class="memitem:ac4a43ca8ae513a20c1d61bc9aecfce89"><td class="memItemLeft" align="right" valign="top">class&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classphysx_1_1PxTask.html#ac4a43ca8ae513a20c1d61bc9aecfce89">PxTaskMgr</a></td></tr>
<tr class="separator:ac4a43ca8ae513a20c1d61bc9aecfce89"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>A <a class="el" href="classphysx_1_1PxBaseTask.html" title="Base class of all task types. ">PxBaseTask</a> implementation with deferred execution and full dependencies. </p>
<p>A <a class="el" href="classphysx_1_1PxTask.html" title="A PxBaseTask implementation with deferred execution and full dependencies. ">PxTask</a> must be submitted to a <a class="el" href="classphysx_1_1PxTaskManager.html" title="The PxTaskManager interface. ">PxTaskManager</a> to to be executed, Tasks may optionally be named when they are submitted. </p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="a01ed1f8968b3e631509c42994b10b5cd"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a01ed1f8968b3e631509c42994b10b5cd">&#9670;&nbsp;</a></span>PxTask()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">physx::PxTask::PxTask </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

</div>
</div>
<a id="acde4da75284803e84d6cb20cda890223"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acde4da75284803e84d6cb20cda890223">&#9670;&nbsp;</a></span>~PxTask()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual physx::PxTask::~PxTask </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="ad3828abb4bd2237af28ecd08b972b1af"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad3828abb4bd2237af28ecd08b972b1af">&#9670;&nbsp;</a></span>addReference()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__foundation.html#gacb03347b642a2a5bdea1f9b305a6fbec">PX_INLINE</a> void physx::PxTask::addReference </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Manually increment this task's reference count. The task will not be allowed to run until <a class="el" href="classphysx_1_1PxTask.html#a097c70f1419ad4991ef876ddd9a74d48" title="Manually decrement this task&#39;s reference count. If the reference count reaches zero, the task will be dispatched. ">removeReference()</a> is called. </p>

<p>Implements <a class="el" href="classphysx_1_1PxBaseTask.html#a07c9f6e71f0723bcf914fce51036d36e">physx::PxBaseTask</a>.</p>

<p class="reference">References <a class="el" href="classphysx_1_1PxTask.html#aa67264a3a16ca138fd854539bf52ac06">mTaskID</a>, <a class="el" href="classphysx_1_1PxBaseTask.html#af23fffec1e92c794d3ad73e9fc4fa974">physx::PxBaseTask::mTm</a>, and <a class="el" href="group__foundation.html#ga4a83a657390b324a460f14684e5accee">PX_ASSERT</a>.</p>

</div>
</div>
<a id="aa417f4d080c31178ff6ded2c92b8bb05"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa417f4d080c31178ff6ded2c92b8bb05">&#9670;&nbsp;</a></span>finishBefore()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__foundation.html#gacb03347b642a2a5bdea1f9b305a6fbec">PX_INLINE</a> void physx::PxTask::finishBefore </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="namespacephysx.html#a7a08e207472f32da1e024056f32d64a2">PxTaskID</a>&#160;</td>
          <td class="paramname"><em>taskID</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Inform the <a class="el" href="classphysx_1_1PxTaskManager.html" title="The PxTaskManager interface. ">PxTaskManager</a> this task must finish before the given. </p>

<p class="reference">References <a class="el" href="classphysx_1_1PxBaseTask.html#af23fffec1e92c794d3ad73e9fc4fa974">physx::PxBaseTask::mTm</a>, and <a class="el" href="group__foundation.html#ga4a83a657390b324a460f14684e5accee">PX_ASSERT</a>.</p>

</div>
</div>
<a id="aae6b544fb79856864edbfaf83cce023a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aae6b544fb79856864edbfaf83cce023a">&#9670;&nbsp;</a></span>getReference()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__foundation.html#gacb03347b642a2a5bdea1f9b305a6fbec">PX_INLINE</a> int32_t physx::PxTask::getReference </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Return the ref-count for this task. </p>

<p>Implements <a class="el" href="classphysx_1_1PxBaseTask.html#a5a1570309c62a12c3ecfe7e695b9f21f">physx::PxBaseTask</a>.</p>

<p class="reference">References <a class="el" href="classphysx_1_1PxTask.html#aa67264a3a16ca138fd854539bf52ac06">mTaskID</a>, and <a class="el" href="classphysx_1_1PxBaseTask.html#af23fffec1e92c794d3ad73e9fc4fa974">physx::PxBaseTask::mTm</a>.</p>

</div>
</div>
<a id="af4d14c61a128bf98957331c04472a4df"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af4d14c61a128bf98957331c04472a4df">&#9670;&nbsp;</a></span>getTaskID()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__foundation.html#gacb03347b642a2a5bdea1f9b305a6fbec">PX_INLINE</a> <a class="el" href="namespacephysx.html#a7a08e207472f32da1e024056f32d64a2">PxTaskID</a> physx::PxTask::getTaskID </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Return the unique ID for this task. </p>

<p class="reference">References <a class="el" href="classphysx_1_1PxTask.html#aa67264a3a16ca138fd854539bf52ac06">mTaskID</a>.</p>

</div>
</div>
<a id="acedcca7b8305c3ad519e537ab307c39a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acedcca7b8305c3ad519e537ab307c39a">&#9670;&nbsp;</a></span>release()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual void physx::PxTask::release </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Release method implementation. </p>

<p>Implements <a class="el" href="classphysx_1_1PxBaseTask.html#a3be62f992c1ff7218e2cf0fc0ba5b244">physx::PxBaseTask</a>.</p>

<p class="reference">References <a class="el" href="classphysx_1_1PxBaseTask.html#af23fffec1e92c794d3ad73e9fc4fa974">physx::PxBaseTask::mTm</a>, <a class="el" href="group__foundation.html#ga4a83a657390b324a460f14684e5accee">PX_ASSERT</a>, and <a class="el" href="classphysx_1_1PxTaskManager.html#a36a746ff81e26d57195ebfdd0141e912">physx::PxTaskManager::taskCompleted()</a>.</p>

</div>
</div>
<a id="a097c70f1419ad4991ef876ddd9a74d48"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a097c70f1419ad4991ef876ddd9a74d48">&#9670;&nbsp;</a></span>removeReference()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__foundation.html#gacb03347b642a2a5bdea1f9b305a6fbec">PX_INLINE</a> void physx::PxTask::removeReference </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Manually decrement this task's reference count. If the reference count reaches zero, the task will be dispatched. </p>

<p>Implements <a class="el" href="classphysx_1_1PxBaseTask.html#a78f9b745c6fb4114350cb1a26f3461d3">physx::PxBaseTask</a>.</p>

<p class="reference">References <a class="el" href="classphysx_1_1PxTask.html#aa67264a3a16ca138fd854539bf52ac06">mTaskID</a>, <a class="el" href="classphysx_1_1PxBaseTask.html#af23fffec1e92c794d3ad73e9fc4fa974">physx::PxBaseTask::mTm</a>, and <a class="el" href="group__foundation.html#ga4a83a657390b324a460f14684e5accee">PX_ASSERT</a>.</p>

</div>
</div>
<a id="a5ea294d819b903a507efe1358f86b8cd"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5ea294d819b903a507efe1358f86b8cd">&#9670;&nbsp;</a></span>startAfter()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__foundation.html#gacb03347b642a2a5bdea1f9b305a6fbec">PX_INLINE</a> void physx::PxTask::startAfter </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="namespacephysx.html#a7a08e207472f32da1e024056f32d64a2">PxTaskID</a>&#160;</td>
          <td class="paramname"><em>taskID</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Inform the <a class="el" href="classphysx_1_1PxTaskManager.html" title="The PxTaskManager interface. ">PxTaskManager</a> this task cannot start until the given. </p>

<p class="reference">References <a class="el" href="classphysx_1_1PxBaseTask.html#af23fffec1e92c794d3ad73e9fc4fa974">physx::PxBaseTask::mTm</a>, and <a class="el" href="group__foundation.html#ga4a83a657390b324a460f14684e5accee">PX_ASSERT</a>.</p>

</div>
</div>
<a id="a2a0a6f83fcd05069f594631272faa8ae"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2a0a6f83fcd05069f594631272faa8ae">&#9670;&nbsp;</a></span>submitted()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual void physx::PxTask::submitted </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Called by <a class="el" href="classphysx_1_1PxTaskManager.html" title="The PxTaskManager interface. ">PxTaskManager</a> at submission time for initialization. </p>
<p>Perform simulation step initialization here. </p>

</div>
</div>
<h2 class="groupheader">Friends And Related Function Documentation</h2>
<a id="ac4a43ca8ae513a20c1d61bc9aecfce89"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac4a43ca8ae513a20c1d61bc9aecfce89">&#9670;&nbsp;</a></span>PxTaskMgr</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">friend class PxTaskMgr</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">friend</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

</div>
</div>
<h2 class="groupheader">Member Data Documentation</h2>
<a id="aa67264a3a16ca138fd854539bf52ac06"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa67264a3a16ca138fd854539bf52ac06">&#9670;&nbsp;</a></span>mTaskID</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="namespacephysx.html#a7a08e207472f32da1e024056f32d64a2">PxTaskID</a> physx::PxTask::mTaskID</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>ID assigned at submission. </p>

<p class="reference">Referenced by <a class="el" href="classphysx_1_1PxTask.html#ad3828abb4bd2237af28ecd08b972b1af">addReference()</a>, <a class="el" href="classphysx_1_1PxTask.html#aae6b544fb79856864edbfaf83cce023a">getReference()</a>, <a class="el" href="classphysx_1_1PxTask.html#af4d14c61a128bf98957331c04472a4df">getTaskID()</a>, and <a class="el" href="classphysx_1_1PxTask.html#a097c70f1419ad4991ef876ddd9a74d48">removeReference()</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="PxTask_8h_source.html">PxTask.h</a></li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.14-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="namespacephysx.html">physx</a></li><li class="navelem"><a class="el" href="classphysx_1_1PxTask.html">PxTask</a></li>
    <li class="footer">Copyright &copy; 2008-2021 NVIDIA Corporation, 2788 San Tomas Expressway, Santa Clara, CA 95051 U.S.A. All rights reserved. <a href="http://www.nvidia.com ">www.nvidia.com</a></li>
  </ul>
</div>
</body>
</html>
